package com.woniu.util;

import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;

import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class MyUtil {
    /*
自动封装实体类的属性值至wrapper
*/
    public static <T> UpdateWrapper<T> transferWrapper(T t) throws InvocationTargetException, IllegalAccessException {
        Class tClass=t.getClass();
        UpdateWrapper<T>wrapper=new UpdateWrapper<>();
        for (Field field:tClass.getDeclaredFields()) {
            for (Method method:tClass.getDeclaredMethods()) {
                String name= "get"+field.getName().substring(0,1).toUpperCase()+field.getName().substring(1);
                if (name.equals(method.getName())) {
                    if (method.invoke(t)!= null&&!"".equals(method.invoke(t))&&!"null".equals(method.invoke(t))) {
                        wrapper.eq(field.getName(), method.invoke(t));
                    };
                }
            }
        }
        return wrapper;
    }

    public static String randomNum(Integer num){
        StringBuffer buffer=new StringBuffer();
        for (int i = 0; i < num; i++) {
           buffer.append((int)(Math.random()*10)) ;
        }
        return buffer.toString();
    }
}
